import { defineStore } from 'pinia'

// 模块名，保证唯一即可
// 配置项
const useCounterStore = defineStore('counter', {
  state: () => ({
    count: 100,
  }),
  actions: {
    // 参数 count 是外界触发 action 的时候传递过来的
    changeCount(count) {
      this.count += count
    },
    changeCountAsync(count) {
      setTimeout(() => {
        this.count += count
      }, 1000)
    },
  },
  getters: {
    double(state) {
      return state.count * 2
      // return this.count * 2
    },
  },
})

export default useCounterStore

export const age = 18

// 问题1：Vuex 和 Pinia 一起用可以吗？
// 问题2：Pinia 获取 state 中的数据的时候不需要加 state？
// 问题3：一个项目中可以用多个 vuex 实例吗？
// 问题4：vuex4 createStore 和 useStore
// 问题5：默认导出和导入
